package com.jeomo.masterdata.starter.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jeomo.base.starter.service.IBaseService;
import com.jeomo.common.core.dto.PageQueryDto;
import com.jeomo.common.core.dto.PageResponseDto;
import com.jeomo.masterdata.starter.entity.Goods;

import java.util.List;

/**
 * @Author: qbt
 * @Date: 2020/3/8 15:32
 * @Version 1.0
 */
public interface IGoodsService extends IBaseService<Goods> {

    int create(Goods goods);

    /**
     * @param merchantCode
     * @description: 根据商户code列表返回商品实体
     * @return: java.util.List<com.jeomo.masterdata.starter.entity.Goods>
     * @author: 崔贺
     * @time: 2020/11/6 10:29
     */
    List<Goods> selectGoodsByMerchantCodes(String merchantCode);

    /**
     * @description: 根据商户code列表返回商品实体   分页
     * @return: java.util.List<com.jeomo.masterdata.starter.entity.Goods>
     * @author: 崔贺
     * @time: 2020/11/6 10:29
     */
    PageResponseDto<Goods> pageGoodsByMerchantCodes(Page<Goods> page, List<String> merchantCode);

    /**
     * @param GoodsTypeCodes
     * @description: 根据品类code列表返回商品实体
     * @return: java.util.List<com.jeomo.masterdata.starter.entity.Goods>
     * @author: 崔贺
     * @time: 2020/11/6 14:54
     */
    List<Goods> selectGoodsByGoodsTypeCodes(List<String> GoodsTypeCodes);

    /**
     * @param tobCodes
     * @description:
     * @return: java.util.List<com.jeomo.masterdata.starter.entity.Goods>
     * @author: 崔贺
     * @time: 2020/11/16 9:51
     */
    List<Goods> selectGoodsByTobCodes(List<String> tobCodes);

    PageResponseDto<Goods> pageSearchByMerchantCodes(PageQueryDto dto, List<String> merchantCodes);
}
